package com.cn.kehong.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OeeProductlineRateExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OeeProductlineRateExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOeeIdIsNull() {
            addCriterion("oee_id is null");
            return (Criteria) this;
        }

        public Criteria andOeeIdIsNotNull() {
            addCriterion("oee_id is not null");
            return (Criteria) this;
        }

        public Criteria andOeeIdEqualTo(String value) {
            addCriterion("oee_id =", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotEqualTo(String value) {
            addCriterion("oee_id <>", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdGreaterThan(String value) {
            addCriterion("oee_id >", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdGreaterThanOrEqualTo(String value) {
            addCriterion("oee_id >=", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLessThan(String value) {
            addCriterion("oee_id <", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLessThanOrEqualTo(String value) {
            addCriterion("oee_id <=", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLike(String value) {
            addCriterion("oee_id like", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotLike(String value) {
            addCriterion("oee_id not like", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdIn(List<String> values) {
            addCriterion("oee_id in", values, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotIn(List<String> values) {
            addCriterion("oee_id not in", values, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdBetween(String value1, String value2) {
            addCriterion("oee_id between", value1, value2, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotBetween(String value1, String value2) {
            addCriterion("oee_id not between", value1, value2, "oeeId");
            return (Criteria) this;
        }

        public Criteria andLineBodyIsNull() {
            addCriterion("line_body is null");
            return (Criteria) this;
        }

        public Criteria andLineBodyIsNotNull() {
            addCriterion("line_body is not null");
            return (Criteria) this;
        }

        public Criteria andLineBodyEqualTo(String value) {
            addCriterion("line_body =", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyNotEqualTo(String value) {
            addCriterion("line_body <>", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyGreaterThan(String value) {
            addCriterion("line_body >", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyGreaterThanOrEqualTo(String value) {
            addCriterion("line_body >=", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyLessThan(String value) {
            addCriterion("line_body <", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyLessThanOrEqualTo(String value) {
            addCriterion("line_body <=", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyLike(String value) {
            addCriterion("line_body like", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyNotLike(String value) {
            addCriterion("line_body not like", value, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyIn(List<String> values) {
            addCriterion("line_body in", values, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyNotIn(List<String> values) {
            addCriterion("line_body not in", values, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyBetween(String value1, String value2) {
            addCriterion("line_body between", value1, value2, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLineBodyNotBetween(String value1, String value2) {
            addCriterion("line_body not between", value1, value2, "lineBody");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkIsNull() {
            addCriterion("line_planning_work is null");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkIsNotNull() {
            addCriterion("line_planning_work is not null");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkEqualTo(Integer value) {
            addCriterion("line_planning_work =", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkNotEqualTo(Integer value) {
            addCriterion("line_planning_work <>", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkGreaterThan(Integer value) {
            addCriterion("line_planning_work >", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkGreaterThanOrEqualTo(Integer value) {
            addCriterion("line_planning_work >=", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkLessThan(Integer value) {
            addCriterion("line_planning_work <", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkLessThanOrEqualTo(Integer value) {
            addCriterion("line_planning_work <=", value, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkIn(List<Integer> values) {
            addCriterion("line_planning_work in", values, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkNotIn(List<Integer> values) {
            addCriterion("line_planning_work not in", values, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkBetween(Integer value1, Integer value2) {
            addCriterion("line_planning_work between", value1, value2, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLinePlanningWorkNotBetween(Integer value1, Integer value2) {
            addCriterion("line_planning_work not between", value1, value2, "linePlanningWork");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageIsNull() {
            addCriterion("line_scheduled_outage is null");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageIsNotNull() {
            addCriterion("line_scheduled_outage is not null");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageEqualTo(String value) {
            addCriterion("line_scheduled_outage =", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageNotEqualTo(String value) {
            addCriterion("line_scheduled_outage <>", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageGreaterThan(String value) {
            addCriterion("line_scheduled_outage >", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageGreaterThanOrEqualTo(String value) {
            addCriterion("line_scheduled_outage >=", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageLessThan(String value) {
            addCriterion("line_scheduled_outage <", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageLessThanOrEqualTo(String value) {
            addCriterion("line_scheduled_outage <=", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageLike(String value) {
            addCriterion("line_scheduled_outage like", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageNotLike(String value) {
            addCriterion("line_scheduled_outage not like", value, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageIn(List<String> values) {
            addCriterion("line_scheduled_outage in", values, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageNotIn(List<String> values) {
            addCriterion("line_scheduled_outage not in", values, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageBetween(String value1, String value2) {
            addCriterion("line_scheduled_outage between", value1, value2, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineScheduledOutageNotBetween(String value1, String value2) {
            addCriterion("line_scheduled_outage not between", value1, value2, "lineScheduledOutage");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesIsNull() {
            addCriterion("line_organizational_losses is null");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesIsNotNull() {
            addCriterion("line_organizational_losses is not null");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesEqualTo(String value) {
            addCriterion("line_organizational_losses =", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesNotEqualTo(String value) {
            addCriterion("line_organizational_losses <>", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesGreaterThan(String value) {
            addCriterion("line_organizational_losses >", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesGreaterThanOrEqualTo(String value) {
            addCriterion("line_organizational_losses >=", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesLessThan(String value) {
            addCriterion("line_organizational_losses <", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesLessThanOrEqualTo(String value) {
            addCriterion("line_organizational_losses <=", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesLike(String value) {
            addCriterion("line_organizational_losses like", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesNotLike(String value) {
            addCriterion("line_organizational_losses not like", value, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesIn(List<String> values) {
            addCriterion("line_organizational_losses in", values, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesNotIn(List<String> values) {
            addCriterion("line_organizational_losses not in", values, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesBetween(String value1, String value2) {
            addCriterion("line_organizational_losses between", value1, value2, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineOrganizationalLossesNotBetween(String value1, String value2) {
            addCriterion("line_organizational_losses not between", value1, value2, "lineOrganizationalLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesIsNull() {
            addCriterion("line_tpm_losses is null");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesIsNotNull() {
            addCriterion("line_tpm_losses is not null");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesEqualTo(String value) {
            addCriterion("line_tpm_losses =", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesNotEqualTo(String value) {
            addCriterion("line_tpm_losses <>", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesGreaterThan(String value) {
            addCriterion("line_tpm_losses >", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesGreaterThanOrEqualTo(String value) {
            addCriterion("line_tpm_losses >=", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesLessThan(String value) {
            addCriterion("line_tpm_losses <", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesLessThanOrEqualTo(String value) {
            addCriterion("line_tpm_losses <=", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesLike(String value) {
            addCriterion("line_tpm_losses like", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesNotLike(String value) {
            addCriterion("line_tpm_losses not like", value, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesIn(List<String> values) {
            addCriterion("line_tpm_losses in", values, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesNotIn(List<String> values) {
            addCriterion("line_tpm_losses not in", values, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesBetween(String value1, String value2) {
            addCriterion("line_tpm_losses between", value1, value2, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTpmLossesNotBetween(String value1, String value2) {
            addCriterion("line_tpm_losses not between", value1, value2, "lineTpmLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesIsNull() {
            addCriterion("line_type_losses is null");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesIsNotNull() {
            addCriterion("line_type_losses is not null");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesEqualTo(String value) {
            addCriterion("line_type_losses =", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesNotEqualTo(String value) {
            addCriterion("line_type_losses <>", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesGreaterThan(String value) {
            addCriterion("line_type_losses >", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesGreaterThanOrEqualTo(String value) {
            addCriterion("line_type_losses >=", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesLessThan(String value) {
            addCriterion("line_type_losses <", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesLessThanOrEqualTo(String value) {
            addCriterion("line_type_losses <=", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesLike(String value) {
            addCriterion("line_type_losses like", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesNotLike(String value) {
            addCriterion("line_type_losses not like", value, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesIn(List<String> values) {
            addCriterion("line_type_losses in", values, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesNotIn(List<String> values) {
            addCriterion("line_type_losses not in", values, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesBetween(String value1, String value2) {
            addCriterion("line_type_losses between", value1, value2, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTypeLossesNotBetween(String value1, String value2) {
            addCriterion("line_type_losses not between", value1, value2, "lineTypeLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesIsNull() {
            addCriterion("line_technology_losses is null");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesIsNotNull() {
            addCriterion("line_technology_losses is not null");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesEqualTo(String value) {
            addCriterion("line_technology_losses =", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesNotEqualTo(String value) {
            addCriterion("line_technology_losses <>", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesGreaterThan(String value) {
            addCriterion("line_technology_losses >", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesGreaterThanOrEqualTo(String value) {
            addCriterion("line_technology_losses >=", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesLessThan(String value) {
            addCriterion("line_technology_losses <", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesLessThanOrEqualTo(String value) {
            addCriterion("line_technology_losses <=", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesLike(String value) {
            addCriterion("line_technology_losses like", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesNotLike(String value) {
            addCriterion("line_technology_losses not like", value, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesIn(List<String> values) {
            addCriterion("line_technology_losses in", values, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesNotIn(List<String> values) {
            addCriterion("line_technology_losses not in", values, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesBetween(String value1, String value2) {
            addCriterion("line_technology_losses between", value1, value2, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineTechnologyLossesNotBetween(String value1, String value2) {
            addCriterion("line_technology_losses not between", value1, value2, "lineTechnologyLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesIsNull() {
            addCriterion("line_amount_losses is null");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesIsNotNull() {
            addCriterion("line_amount_losses is not null");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesEqualTo(String value) {
            addCriterion("line_amount_losses =", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesNotEqualTo(String value) {
            addCriterion("line_amount_losses <>", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesGreaterThan(String value) {
            addCriterion("line_amount_losses >", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesGreaterThanOrEqualTo(String value) {
            addCriterion("line_amount_losses >=", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesLessThan(String value) {
            addCriterion("line_amount_losses <", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesLessThanOrEqualTo(String value) {
            addCriterion("line_amount_losses <=", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesLike(String value) {
            addCriterion("line_amount_losses like", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesNotLike(String value) {
            addCriterion("line_amount_losses not like", value, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesIn(List<String> values) {
            addCriterion("line_amount_losses in", values, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesNotIn(List<String> values) {
            addCriterion("line_amount_losses not in", values, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesBetween(String value1, String value2) {
            addCriterion("line_amount_losses between", value1, value2, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andLineAmountLossesNotBetween(String value1, String value2) {
            addCriterion("line_amount_losses not between", value1, value2, "lineAmountLosses");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIsNull() {
            addCriterion("qualified_quantity is null");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIsNotNull() {
            addCriterion("qualified_quantity is not null");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity =", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity <>", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityGreaterThan(BigDecimal value) {
            addCriterion("qualified_quantity >", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity >=", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityLessThan(BigDecimal value) {
            addCriterion("qualified_quantity <", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityLessThanOrEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity <=", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIn(List<BigDecimal> values) {
            addCriterion("qualified_quantity in", values, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotIn(List<BigDecimal> values) {
            addCriterion("qualified_quantity not in", values, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("qualified_quantity between", value1, value2, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("qualified_quantity not between", value1, value2, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberIsNull() {
            addCriterion("rejects_number is null");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberIsNotNull() {
            addCriterion("rejects_number is not null");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberEqualTo(BigDecimal value) {
            addCriterion("rejects_number =", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberNotEqualTo(BigDecimal value) {
            addCriterion("rejects_number <>", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberGreaterThan(BigDecimal value) {
            addCriterion("rejects_number >", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("rejects_number >=", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberLessThan(BigDecimal value) {
            addCriterion("rejects_number <", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberLessThanOrEqualTo(BigDecimal value) {
            addCriterion("rejects_number <=", value, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberIn(List<BigDecimal> values) {
            addCriterion("rejects_number in", values, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberNotIn(List<BigDecimal> values) {
            addCriterion("rejects_number not in", values, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rejects_number between", value1, value2, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andRejectsNumberNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rejects_number not between", value1, value2, "rejectsNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIsNull() {
            addCriterion("total_number is null");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIsNotNull() {
            addCriterion("total_number is not null");
            return (Criteria) this;
        }

        public Criteria andTotalNumberEqualTo(String value) {
            addCriterion("total_number =", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotEqualTo(String value) {
            addCriterion("total_number <>", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberGreaterThan(String value) {
            addCriterion("total_number >", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberGreaterThanOrEqualTo(String value) {
            addCriterion("total_number >=", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberLessThan(String value) {
            addCriterion("total_number <", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberLessThanOrEqualTo(String value) {
            addCriterion("total_number <=", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberLike(String value) {
            addCriterion("total_number like", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotLike(String value) {
            addCriterion("total_number not like", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIn(List<String> values) {
            addCriterion("total_number in", values, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotIn(List<String> values) {
            addCriterion("total_number not in", values, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberBetween(String value1, String value2) {
            addCriterion("total_number between", value1, value2, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotBetween(String value1, String value2) {
            addCriterion("total_number not between", value1, value2, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberIsNull() {
            addCriterion("finish_number is null");
            return (Criteria) this;
        }

        public Criteria andFinishNumberIsNotNull() {
            addCriterion("finish_number is not null");
            return (Criteria) this;
        }

        public Criteria andFinishNumberEqualTo(BigDecimal value) {
            addCriterion("finish_number =", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberNotEqualTo(BigDecimal value) {
            addCriterion("finish_number <>", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberGreaterThan(BigDecimal value) {
            addCriterion("finish_number >", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("finish_number >=", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberLessThan(BigDecimal value) {
            addCriterion("finish_number <", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberLessThanOrEqualTo(BigDecimal value) {
            addCriterion("finish_number <=", value, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberIn(List<BigDecimal> values) {
            addCriterion("finish_number in", values, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberNotIn(List<BigDecimal> values) {
            addCriterion("finish_number not in", values, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("finish_number between", value1, value2, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andFinishNumberNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("finish_number not between", value1, value2, "finishNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberIsNull() {
            addCriterion("sinter_number is null");
            return (Criteria) this;
        }

        public Criteria andSinterNumberIsNotNull() {
            addCriterion("sinter_number is not null");
            return (Criteria) this;
        }

        public Criteria andSinterNumberEqualTo(BigDecimal value) {
            addCriterion("sinter_number =", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberNotEqualTo(BigDecimal value) {
            addCriterion("sinter_number <>", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberGreaterThan(BigDecimal value) {
            addCriterion("sinter_number >", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("sinter_number >=", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberLessThan(BigDecimal value) {
            addCriterion("sinter_number <", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberLessThanOrEqualTo(BigDecimal value) {
            addCriterion("sinter_number <=", value, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberIn(List<BigDecimal> values) {
            addCriterion("sinter_number in", values, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberNotIn(List<BigDecimal> values) {
            addCriterion("sinter_number not in", values, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("sinter_number between", value1, value2, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andSinterNumberNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("sinter_number not between", value1, value2, "sinterNumber");
            return (Criteria) this;
        }

        public Criteria andProductionIsNull() {
            addCriterion("production is null");
            return (Criteria) this;
        }

        public Criteria andProductionIsNotNull() {
            addCriterion("production is not null");
            return (Criteria) this;
        }

        public Criteria andProductionEqualTo(String value) {
            addCriterion("production =", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionNotEqualTo(String value) {
            addCriterion("production <>", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionGreaterThan(String value) {
            addCriterion("production >", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionGreaterThanOrEqualTo(String value) {
            addCriterion("production >=", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionLessThan(String value) {
            addCriterion("production <", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionLessThanOrEqualTo(String value) {
            addCriterion("production <=", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionLike(String value) {
            addCriterion("production like", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionNotLike(String value) {
            addCriterion("production not like", value, "production");
            return (Criteria) this;
        }

        public Criteria andProductionIn(List<String> values) {
            addCriterion("production in", values, "production");
            return (Criteria) this;
        }

        public Criteria andProductionNotIn(List<String> values) {
            addCriterion("production not in", values, "production");
            return (Criteria) this;
        }

        public Criteria andProductionBetween(String value1, String value2) {
            addCriterion("production between", value1, value2, "production");
            return (Criteria) this;
        }

        public Criteria andProductionNotBetween(String value1, String value2) {
            addCriterion("production not between", value1, value2, "production");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputIsNull() {
            addCriterion("maximum_output is null");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputIsNotNull() {
            addCriterion("maximum_output is not null");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputEqualTo(String value) {
            addCriterion("maximum_output =", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputNotEqualTo(String value) {
            addCriterion("maximum_output <>", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputGreaterThan(String value) {
            addCriterion("maximum_output >", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputGreaterThanOrEqualTo(String value) {
            addCriterion("maximum_output >=", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputLessThan(String value) {
            addCriterion("maximum_output <", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputLessThanOrEqualTo(String value) {
            addCriterion("maximum_output <=", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputLike(String value) {
            addCriterion("maximum_output like", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputNotLike(String value) {
            addCriterion("maximum_output not like", value, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputIn(List<String> values) {
            addCriterion("maximum_output in", values, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputNotIn(List<String> values) {
            addCriterion("maximum_output not in", values, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputBetween(String value1, String value2) {
            addCriterion("maximum_output between", value1, value2, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andMaximumOutputNotBetween(String value1, String value2) {
            addCriterion("maximum_output not between", value1, value2, "maximumOutput");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}